package com.goldcn.order.dto;

import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

/**
 * Created by 1111 on 2016/12/3.
 */
public class AddOrderDto {
    @NotNull(message = "{cartID.not.empty}")
    private Long cartID;
    @ApiModelProperty(value = "地址ID")
    @NotNull(message = "{addressID.not.empty}")
    private String addressID;
    @ApiModelProperty(value = "0不需要发票 1个人 2公司")
    @NotNull(message = "{invoices.not.empty}")
    private Integer invoices;  //0不需要发票 1需要
    @ApiModelProperty(value = "发票抬头")
    private String invoicesHead;

    @ApiModelProperty(value = "公司纳税人识别号")
    private String invoicesNO;

    @ApiModelProperty(value = "用户ID")
    private Long userID;

    @ApiModelProperty(value = "优惠券ID")
    private Long couponID;

    @ApiModelProperty(value = "金豆数量")
    private BigDecimal pointQty;

    @ApiModelProperty(value = "金豆金额/优惠券金额")
    private BigDecimal pointAmount;

    @ApiModelProperty(value = "优惠类型: 1:金豆 2:优惠券,default:1", dataType = "String", required = false)
    private String couponType = "1";

    @ApiModelProperty(value = "发票类型:1电子发票2纸质发票,default:1", dataType = "Integer", required = false)
    private Integer invoicesType;

    private Long companyID;

    @ApiModelProperty(value = "支付类型:1线下支付", dataType = "Integer")
    private Integer orderPayType;
    @ApiModelProperty(value = "优惠类型:0不优惠,1优惠", dataType = "Integer")
    private Integer discountType;

    private Integer discountWay;//1会员优惠，2代理商折扣，3奖金折扣

    private BigDecimal price;

    private Long shopID;

    public Integer getDiscountType() {
        return discountType;
    }

    public void setDiscountType(Integer discountType) {
        this.discountType = discountType;
    }

    public BigDecimal getPointQty() {
        return pointQty;
    }

    public void setPointQty(BigDecimal pointQty) {
        this.pointQty = pointQty;
    }

    public BigDecimal getPointAmount() {
        return pointAmount;
    }

    public void setPointAmount(BigDecimal pointAmount) {
        this.pointAmount = pointAmount;
    }

    public String getCouponType() {
        return couponType;
    }

    public void setCouponType(String couponType) {
        this.couponType = couponType;
    }

    public Long getCartID() {
        return cartID;
    }

    public void setCartID(Long cartID) {
        this.cartID = cartID;
    }

    public String getAddressID() {
        return addressID;
    }

    public void setAddressID(String addressID) {
        this.addressID = addressID;
    }

    public Integer getInvoices() {
        return invoices;
    }

    public void setInvoices(Integer invoices) {
        this.invoices = invoices;
    }

    public String getInvoicesHead() {
        return invoicesHead;
    }

    public void setInvoicesHead(String invoicesHead) {
        this.invoicesHead = invoicesHead;
    }

    public Long getCompanyID() {
        return companyID;
    }

    public void setCompanyID(Long companyID) {
        this.companyID = companyID;
    }

    public Long getUserID() {
        return userID;
    }

    public void setUserID(Long userID) {
        this.userID = userID;
    }

    public Integer getInvoicesType() {
        return invoicesType;
    }

    public void setInvoicesType(Integer invoicesType) {
        this.invoicesType = invoicesType;
    }

    public Integer getOrderPayType() {
        return orderPayType;
    }

    public void setOrderPayType(Integer orderPayType) {
        this.orderPayType = orderPayType;
    }

    public String getInvoicesNO() {
        return invoicesNO;
    }

    public void setInvoicesNO(String invoicesNO) {
        this.invoicesNO = invoicesNO;
    }

    public Integer getDiscountWay() {
        return discountWay;
    }

    public void setDiscountWay(Integer discountWay) {
        this.discountWay = discountWay;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public Long getShopID() {
        return shopID;
    }

    public void setShopID(Long shopID) {
        this.shopID = shopID;
    }

    public Long getCouponID() {
        return couponID;
    }

    public void setCouponID(Long couponID) {
        this.couponID = couponID;
    }
}
